Nonvolatile memories use a variety of memory cell designs. Examples of nonvolatile memories include read only memory, flash memory, etc. A nonvolatile memory device may be accessed by a central processor unit (CPU) or other devices or processors for various purposes during the operation of a computer system. The term “access” includes read, write, erase and rewrite execution commands to the nonvolatile memory device. Nonvolatile memories can retain the stored information without being erased even in the absence of power supply. In other words, once electrically programmed, the nonvolatile memory may retain the stored data until it is electrically erased. In addition, data stored in the nonvolatile memory may be changed at any time when the power supply is resumed. One of the many applications for nonvolatile memories include serving as storage media in digital cameras, music players, cellular phones, etc. and serving as system memories in computing systems, personal digital assistants (PDAs), phones, etc.
Without limiting the scope of invention, the use of a nonvolatile memory as a BIOS memory in a computing system is illustrated below. In order for a computer system to operate properly, its operating system needs to be properly configured to communicate with the computer system's hardware devices. Basic Input Output System (BIOS) codes or other boot codes are typically the codes used for such configuration. To retain the codes without the need of power supply, the BIOS codes are typically stored in a nonvolatile memory device on the motherboard of a computer system.
As illustrative examples, a BIOS memory may have various sizes and configurations, such as 16 Megabits (MB) or 32 MB. A BIOS memory may include a set of contiguous memory blocks. Depending on its applications and design, a typical memory block granularity or unit may be 64 KB. And a 16 MB BIOS memory may therefore have 32 memory blocks. BIOS memories may be used to store many types of information, such as critical boot codes, peripheral “plug and play” data, unique serial number of a computer system, etc. If information stored in BIOS memory is improperly altered or overwritten, the computer system may not function properly. Therefore, there may be a need for protecting data in a BIOS memory or other nonvolatile memory devices to ensure the data is protected from improper alteration or deletion.